
function get(options) { // {url, data, async = true, dataType = "text", success}

    let { url, data, async = true, dataType = "text", success } = options;

    var xhr = new XMLHttpRequest();

    if (typeof data == "object") {  // 传入的数据是对象类型(条件不准确->后期补充)

        var list = [];
        for (var key in data) {
            var val = data[key];
            list.push(key + "=" + val)
        }
        data = list.join("&");
    }

    console.log(1111, data);
    xhr.open("get", data ? url + "?" + data : url, async);

    xhr.send();

    xhr.onreadystatechange = function () {
        if (xhr.readyState == 4 && xhr.status == 200) {
            var result = xhr.responseText;

            // 数据处理
            if (dataType == "json") {
                result = JSON.parse(result);
            }
            // console.log(result);

            // 拿到数据之后的可能操作
            // 列表数据 =>  动态生成(成绩表 商品列表)
            // 数据增删改  => 增删改成功/失败


            if (success) { //  在请求成功之后调用回调函数
                success(result);  // 回调函数调用过程中出入实际参数(请求的结果)
            }

        }
    }
}


function post(options) { // {url, data, async = true, dataType = "text", success}

    let { url, data, async = true, dataType = "text", success } = options;

    var xhr = new XMLHttpRequest();

    if (typeof data == "object") {  // 传入的数据是对象类型(条件不准确->后期补充)

        var list = [];
        for (var key in data) {
            var val = data[key];
            list.push(key + "=" + val)
        }
        data = list.join("&");
    }

    xhr.open("post", url, async);

    xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xhr.send(data);

    xhr.onreadystatechange = function () {
        if (xhr.readyState == 4 && xhr.status == 200) {
            var result = xhr.responseText;

            // 数据处理
            if (dataType == "json") {
                result = JSON.parse(result);
            }
            // console.log(result);

            // 拿到数据之后的可能操作
            // 列表数据 =>  动态生成(成绩表 商品列表)
            // 数据增删改  => 增删改成功/失败


            if (success) { //  在请求成功之后调用回调函数
                success(result);  // 回调函数调用过程中出入实际参数(请求的结果)
            }

        }
    }
}

function ajax(options) { // {url, data, async = true, dataType = "text", success}

    let { type = "get", url, data, async = true, dataType = "text", success } = options;

    var xhr = new XMLHttpRequest();

    if (typeof data == "object") {  // 传入的数据是对象类型(条件不准确->后期补充)

        var list = [];
        for (var key in data) {
            var val = data[key];
            list.push(key + "=" + val)
        }
        data = list.join("&");
    }

    if (type.toLowerCase() == "get") { // GET get Get
        xhr.open("get", data ? url + "?" + data : url, async);
        xhr.send();
    } else if (type.toLowerCase() == "post") { // POST post Post
        xhr.open("post", url, async);

        xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
        xhr.send(data);
    }


    xhr.onreadystatechange = function () {
        if (xhr.readyState == 4 && xhr.status == 200) {
            var result = xhr.responseText;

            // 数据处理
            if (dataType == "json") {
                result = JSON.parse(result);
            }
            // console.log(result);

            // 拿到数据之后的可能操作
            // 列表数据 =>  动态生成(成绩表 商品列表)
            // 数据增删改  => 增删改成功/失败


            if (success) { //  在请求成功之后调用回调函数
                success(result);  // 回调函数调用过程中出入实际参数(请求的结果)
            }

        }
    }
}